A search engine tool is a software program designed to help a user access documents (e.g., web pages) stored on a computer, for example on a network (e.g., local area network, Internet, etc.), by allowing the user to request documents related to search criteria (typically those containing a given keyword, a set of keywords, or a phrase) and retrieving documents that are associated with that criteria.
Web search engines work by storing information about a large number of web documents that are retrieved from the Internet. These documents are retrieved by an automated software program (e.g., typically known as a web crawler or spider) which follows and retrieves every associative link. The contents of each document is then analyzed to determine how it should be indexed (for example, words are extracted from the titles, headings, or special fields called metatags). This data about the web documents is stored in some form of a web server index database for use in later queries.
For example, when a user makes a query, the search engine looks up the web server index and provides a listing (e.g., a search result) of best-matching web documents according to the query, usually with a short summary having at least the document's title, location, and sometimes parts of the text.
The usefulness of a search engine to most people is based on the relevance of search results that it gives back. While there may be millions of web documents that include a particular keyword or phrase, often particular documents are more relevant, popular, or authoritative. Most search engines employ methods of ranking the results to re-order the search results for purposes of providing the “best” search results first. These algorithms (i.e., ranking methods) use various rules applied to keywords to order the results. Examples of such ranking methods include text matching, link analysis, and click popularity. How a search engine decides which documents are the best matches, and what order the results should be shown in, varies widely from one engine to another.
The accuracy in the relevancy is not only relevant to the searcher but also to the provider of search functionality who uses the information for targeted advertisements, inserts or other sources of additional revenue. Therefore, search systems should be designed to better match the expectation of searchers.